Memory Layer: Train the In-Model Cache for Recommendation Models
记忆层:联合训练推荐模型的内置缓存
🧭 训练-服务一致性 · 嵌入式缓存联合训练 ★ 深度解读
Meta
将物品嵌入缓存变为训练-服务共享的可写组件,消除表示不一致,冷启动提升5-6%,NE gap降低86%
📌 工作参考价值(5 点)
- 将离线批量评估替换为可训练的嵌入缓存:在粗排/精排中,可将物品塔输出写入共享嵌入表,训练时直接读取该表计算损失,推理时也读取同一表,消除特征源和新鲜度差异,大幅缩小训练-服务 NE gap。
- Writeback 精确赋值技巧:用学习率 η=1 的 SGD 优化器,通过构造梯度 g_wb = cached − target 实现 exact assignment,将物品塔输出写入缓存,无需额外优化器状态或自定义 CUDA 内核,工程实现简单。
- 多表训练(Multi-Table Training)覆盖全候选池:同时将从训练流和候选池流读取数据,合并特征后通过一次物品塔前向写入缓存,训练损失仅用训练样本,确保缓存包含全量候选物品,不再依赖单独的每小时批量评估服务,降低维护复杂度。
- Raw Embedding Streaming 实时更新缓存:在训练 TBE 预取时捕获更新后的嵌入,通过异步流水线每秒推送到预测器,达到约 20 秒延迟,比分钟级批量流式更新显著提升新鲜度,冷启动物品召回提升超 2×。
- Always-on 兜底消除硬 fallback:用少量通用特征(如作者 ID)生成 always-on 嵌入,缓存命中时与缓存嵌入融合,缺失时只用 always-on 嵌入,模型通过学习自动调节依赖权重,使冷启动物品和缺失物品仍能获得合理分数,避免固定负分或随机降级导致的体验和指标损失。